﻿using System;
using System.Collections.Generic;
using System.Text;

namespace RuoTeng.Util
{
    class ParseType
    {
        public static int ParseInt(object value)
        {   
            return ParseInt(value.ToString(),0); 
        }

        public static int ParseInt(object value, int defautValue)
        {
            return value != null ? ParseInt(value.ToString(), defautValue) : defautValue;
        }

        public static int ParseInt(string value)
        {
            return ParseInt(value,0);
        }

        public static int ParseInt(string value, int defautValue)
        {
            int __defautValue = defautValue;
            return int.TryParse(value, out __defautValue) ? __defautValue : defautValue;
        }

        public static uint ParseUInt(string value)
        {
            return ParseUInt(value, 0);
        }

        public static uint ParseUInt(string value, uint defautValue)
        {
            uint __defautValue = defautValue;
            return uint.TryParse(value, out __defautValue) ? __defautValue : defautValue;
        }

        public static ulong ParseULong(string value)
        {
            return ParseUInt(value, 0);
        }

        public static ulong ParseULong(string value, ulong defautValue)
        {
            ulong __defautValue = defautValue;
            return ulong.TryParse(value, out __defautValue) ? __defautValue : defautValue;
        }

        public static bool ParseBool(string value)
        {
           return ParseBool(value,false);
        }

        public static bool ParseBool(string value, bool defautValue)
        {
            bool __defautValue = defautValue;
            return bool.TryParse(value, out __defautValue) ? __defautValue : defautValue;
        }
    }
}
